﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using NutriLeaf.Web.Core.General;

namespace NutriLeaf.Web.Core.Food
{
    public interface IFood
    {
        void AddFood(FoodData food,ref Model.NutriLeafDBEntities context);

        void AddFood(string foodName,ref Model.NutriLeafDBEntities context);

        List<Model.Food> SuggestFoods(int userId,DateTime clientDateTime,Model.Location location,ref Model.NutriLeafDBEntities context); // NUTRI SENSE

        void RemoveFood(int foodId,ref Model.NutriLeafDBEntities context);

        void UpdateFood(FoodData foodData,ref Model.NutriLeafDBEntities context);

        void UpdateFood(Model.Food food,ref Model.NutriLeafDBEntities context);

        void EatFood(int userId, int foodServingId, int quantity, DateTime clientDateTime, ref Model.NutriLeafDBEntities context);

        void RemoveFoodDiaryEntry(int foodDiary, ref Model.NutriLeafDBEntities context);

        FoodData GetFoodData(int foodId, ref Model.NutriLeafDBEntities context);

        List<StringIdPair> GetFoodNames(string startsWith, ref Model.NutriLeafDBEntities context);

    }
}